草庐IT

Sonar Qube

全部标签

java - 在 openjdk11 下执行 sonar-maven-plugin 时不支持的类文件主要版本 55

我环顾了类似的问题和回复,但没有找到适合我的解决方案。我正在使用openjdk11和apache-maven-3.5.4进行项目编译和打包,一切正常,应用程序运行正常。但是在我执行基于通过Maven命令连接到Sonar立方体服务器的Sonar分析时,它失败了并且出现了一些问题。当我使用jdk6和maven3.2.1时,此命令有效。使用的maven命令:mvnsonar:sonar-Dsonar.host.url={mysonarcube.server}-Dsonar.login={mysonartoken}关键pom.xml与sonar相关:org.apache.maven.plugi

java - SonarQube Findbugs "needs sources to be compiled"

我正在尝试让SonarQubefindbugs正常工作,但是当我尝试运行它时出现错误:“Findbugs需要编译源代码。请在执行Sonar之前构建项目并检查编译类的位置。”sonar.sources设置为包含我所有src文件的文件夹,sonar.binaries设置为包含我所有类和jar文件的文件夹。此布局适用于我的一个项目的findbugs,但在另一个项目中出现上述错误。我该如何解决这个问题,FindBugs是否需要某个文件夹才能工作?谢谢。 最佳答案 添加属性sonar.binaries=${workspace}/proy/bu

java - SonarQube 支持 Java9 吗?

这个问题实际上是双重的:能否使用SonarQube分析Java9项目?SonarQube本身能否在Java9JVM上运行?SamequestionforJava8 最佳答案 TL;DR:是的!!!它支持分析,显然是从2017年7月3日开始(但他们拼命试图掩盖事实......)截至目前(2017-10-24,SonarQube版本6.6),SonarQube可以使用SonarJava4.11ornewer分析Java9代码,但官方不支持在Java9JVM上运行。SonarQubeJava插件兼容性TheSonarJavapage声明它

java - 如何添加静态成员变量Jacoco Test Coverage?

我有一个类如下:publicclassXConstants{publicstaticfinalintA_TYPE=1;publicstaticfinalintB_TYPE=2;}我在测试中同时使用了这两个变量,但是当我使用Jacoco检查测试覆盖率时,它显示该类的测试覆盖率为%0。我的猜测是,这是因为我从来没有实例化这个类,只是使用它的静态变量。我尝试创建一个实例,测试覆盖率达到%100。我该如何克服这个问题? 最佳答案 JaCoCo根据实际执行的字节码的百分比来衡量测试覆盖率。声明静态最终原语或字符串常量不会创建要执行的字节码,它

java - Sonar 扫描仪不支持的 major.minor 版本异常

我正在尝试使用SonarQube分析我的源代码。我正在尝试使用sonar-scanner作为从命令行运行分析的工具。我遵循了本文档文章中提供的指南:http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner当我尝试通过运行sonar-scanner-h来测试安装时,出现以下错误:➜~sonar-scanner-hExceptioninthread"main"java.lang.UnsupportedClassVersionError:org/sonarsource/scanner/cli/Main:Un

java - 如果 JUnit 覆盖率低于特定阈值,如何使 Maven 构建失败

我正在从sonarrestapi获取单元测试覆盖率指标。如果构建低于定义的值,我该如何使构建失败? 最佳答案 JaCoCo提供该功能。具有配置规则的JaCoCo使用配置规则定义JaCoCo插件COVEREDRATIO对于LINE和BRANCH:org.jacocojacoco-maven-plugin0.7.7.201606060606default-prepare-agentprepare-agentcheckcheckCLASSLINECOVEREDRATIO0.80BRANCHCOVEREDRATIO0.80com.xyz.C

java - "No information about coverage per test."来自带有 Jacoco Ant 构建的 Sonar

我正在使用Ant、Jacoco和Sonar。当我运行构建时,Sonar告诉我“没有关于每次测试覆盖率的信息”。Sonar仪表板有我的覆盖结果,但我无法深入查看它们以查看代码。然而,由Jacoco生成的HTML报告确实包含深入代码。这是我的报道任务:我的Sonar目标看起来像这样:有人知道我错过了什么吗? 最佳答案 看起来您还没有设置“sonar.tests”属性来告诉Sonar在哪里可以找到单元测试的源代码。参见http://docs.sonarqube.org/display/SONAR/Analysis+Parameters.大

java - 新的 Sonar IntelliJ 插件增量分析和检测不起作用

我想寻求帮助。我安装了plugin并成功添加了SonarQube服务器。我升级到版本4.1.2。我使用IntelliJIDEA13.0.2。我也成功关联了项目并出现检查警告。但是当我解决问题时,状态没有更新。如何同步?我还按名称“SonarQube问题”进行检查。尽管如此,在运行检查后,警告也在那里,代码已修复。在我看来,同步以某种方式失败了。请问有什么想法吗? 最佳答案 我在我的情况下做了什么。已安装SonarQube4.4。已安装IntelliJ13.1.4b(与13.0.4的历史相同)。配置SonarQubeintelliJ插

java - 为什么 anyValue 是 double 值时 Sonar 中的 anyValue % 1 "silly math"?

SonarQube提出重大违规Sillymathshouldnotbeperformed在我的代码中。描述说Certainmathoperationsarejustsillyandshouldnotbeperformedbecausetheirresultsarepredictable.Inparticular,anyValue%1issillybecauseitwillalwaysreturn0.但在我的例子中,anyValue是一个double值。这有效asintended为了我。这是实际的代码:doublev=Double.parseDouble(Utils.formatDoub

java - IntStream 什么时候真正关闭? SonarQube S2095 是 IntStream 的误报吗?

我使用Java8流代替许多旧式for循环来迭代一堆结果并生成摘要统计信息。例如:intmessages=IntStream.rangeClosed(0,7).map(ids::get).reduce(Integer::sum).getAsInt();注意:我知道还有其他方法可以进行上面显示的计数。我这样做是为了说明我的问题。我正在使用带有Java3.9插件的SonarQube5.3。在该配置中,上面的代码行违反了squid规则S2095:“应关闭资源”。如果AutoCloseable(例如FileInputStream)已打开但从未关闭,这就是我希望看到的结果。所以这是我的问题:终端操